// Jenkinsfile (Declarative Pipeline) 需要注释
pipeline {
    agent { label 'WIN10' }

    stages {
        stage('Load Class and Execute') {
            steps {
                script {
                    // 加载 MyClass
                    echo "Loading MyClass..."
                    def myClassScript = load 'src/com/example/MyClass.groovy' // 加载 MyClass.groovy 脚本
                    echo "Loaded MyClass: ${myClassScript}"

                    // 创建 MyClass 的实例
                    def myObject = new myClassScript.MyClass('Jenkins User')  // 使用加载的脚本对象
                    myObject.greet()

                    // 加载 AnotherClass 脚本
                    echo "Loading AnotherClass..."
                    def anotherClassScript = load 'lib/AnotherClass.groovy'
                    echo "Loaded AnotherClass: ${anotherClassScript}"

                    // 确保脚本对象正确引用类并实例化
                    // def anotherObject = new anotherClassScript()  // 直接通过加载的脚本对象实例化
                    // anotherObject.greet()
                }
            }
        }
    }
}